package com.lintf.devdemo.service;

import com.lintf.devdemo.entity.dto.UserInfoDeleteDto;
import com.lintf.devdemo.entity.dto.UserInfoInsertDto;
import com.lintf.devdemo.entity.dto.UserInfoSelectDto;
import com.lintf.devdemo.entity.dto.UserInfoUpdateDto;
import com.lintf.devdemo.entity.po.UserAccount;
import com.lintf.devdemo.entity.vo.UserInfoVo;

import java.util.Collection;
import java.util.List;

/**
 * @ system:Window
 * @ author:lin tingfeng
 * @ data:2022/09/29-11:28
 * @ package_name:com.lintf.devdemo.service
 * @ project_name:DevDemo
 * @ desc:用户业务逻辑层
 */
public interface UserService {

    List<UserInfoVo> getUserInfoList();

    List<UserInfoVo> selectUserInfoByCondition(UserInfoSelectDto userInfoSelectDto);

    Integer insertUserInfo(UserInfoInsertDto userInfoInsertDto);

    Integer updateUserInfo(UserInfoUpdateDto userInfoUpdateDto);

    Integer deleteUserInfo(UserInfoDeleteDto userInfoDeleteDto);

    Integer deleteUserInfoById(Integer userInfoId);

    boolean insertUserAccountBatch(Collection<UserAccount> entityList);
}
